package wci.intermediate;


import wci.frontend.ASTjoinStatement;
import wci.frontend.ASTCONTAINS;
import wci.frontend.ASTIS_A;
import wci.frontend.ASTIS_LARGER_THAN;
import wci.frontend.ASTIS_SAME_AS;
import wci.frontend.ASTIS_SMALLER_THAN;
import wci.frontend.ASTcheckforStatement;
import wci.frontend.ASTcomparison;
import wci.frontend.ASTdestination;
import wci.frontend.ASTfetchExpression;
import wci.frontend.ASTincrementStatement;
import wci.frontend.ASTinsertStatement;
import wci.frontend.ASTremoveStatement;
import wci.frontend.ASTwriteToFileStatement;
//import wci.frontend.ASTfetchStatement;
import wci.frontend.ASTfileUri;
import wci.frontend.ASTforStatement;
import wci.frontend.ASThttpUri;
import wci.frontend.ASTifStatement;

import wci.frontend.ASTmethodBody;
import wci.frontend.ASTmethodCall;
import wci.frontend.ASTmultiply;
import wci.frontend.ASTdivide;
import wci.frontend.ASTassignmentStatement;
import wci.frontend.ASTcompoundStatement;
import wci.frontend.ASTintegerConstant;

import wci.frontend.ASTparam;
import wci.frontend.ASTrealConstant;
import wci.frontend.ASTregex;
import wci.frontend.ASTshow;
import wci.frontend.ASTstringConstant;
//import wci.frontend.ASTuriId;
import wci.frontend.ASTvariable;
import wci.frontend.eREMParserVisitor;
import wci.frontend.SimpleNode;

public class PclParserVisitorAdapter implements eREMParserVisitor
{
    public Object visit(SimpleNode node, Object data)
    {
        return node.childrenAccept(this, data);
    }
    
    public Object visit(ASTcompoundStatement node, Object data)
    {
        return node.childrenAccept(this, data);
    }
    
    public Object visit(ASTassignmentStatement node, Object data)
    {
        return node.childrenAccept(this, data);
    }
    


    public Object visit(ASTmultiply node, Object data)
    {
        return node.childrenAccept(this, data);
    }

    public Object visit(ASTdivide node, Object data)
    {
        return node.childrenAccept(this, data);
    }

    public Object visit(ASTvariable node, Object data)
    {
         return node.childrenAccept(this, data);
    }

    public Object visit(ASTintegerConstant node, Object data)
    {
        return node.childrenAccept(this, data);
    }

    public Object visit(ASTrealConstant node, Object data)
    {
        return node.childrenAccept(this, data);
    }

	
	public Object visit(ASTstringConstant node, Object data) 
	{
		 return node.childrenAccept(this, data);
	}


	public Object visit(ASTifStatement node, Object data) {

		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTcheckforStatement node, Object data) {
		return node.childrenAccept(this, data);
	}


	@Override
	public Object visit(ASThttpUri node, Object data) {
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTfileUri node, Object data) {
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTcomparison node, Object data) {
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTIS_A node, Object data) {
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTIS_SAME_AS node, Object data) {
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTCONTAINS node, Object data) {
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTIS_LARGER_THAN node, Object data) {
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTIS_SMALLER_THAN node, Object data) {
		return node.childrenAccept(this, data);
	}

	

	@Override
	public Object visit(ASTregex node, Object data) {
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTshow node, Object data) {
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTforStatement node, Object data) {
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTfetchExpression node, Object data) {
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTmethodBody node, Object data) {
		// TODO Auto-generated method stub
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTparam node, Object data) {
		// TODO Auto-generated method stub
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTmethodCall node, Object data) {
		// TODO Auto-generated method stub
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTincrementStatement node, Object data) {
		// TODO Auto-generated method stub
		//System.out.println("got to visit. typespec is: " + node.getTypeSpec());
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTwriteToFileStatement node, Object data) {
		// TODO Auto-generated method stub
		return node.childrenAccept(this, data);
	}

	@Override
	public Object visit(ASTinsertStatement node, Object data) {
		// TODO Auto-generated method stub
		return node.childrenAccept(this, data);
	}


	
	@Override
	public Object visit(ASTremoveStatement node, Object data) {
		return node.childrenAccept(this, data);
	}

	
	@Override
	public Object visit(ASTjoinStatement node, Object data) {
		return node.childrenAccept(this, data);
	}
	
}
